Reduced complexity sliding window based equalizer

ABSTRACT

A sliding window based data estimation is performed. An error is introduced in the data estimation due to the communication model modeling the relationship between the transmitted and received signals. To compensate for an error in the estimated data, the data that was estimated in a previous sliding window step or terms that would otherwise be truncated as noise are used. These techniques allow for the data to be truncated prior to further processing reducing the data of the window.

CROSS REFERENCE TO RELATED APPLICATION(S)

This application claims priority from U.S. provisional application No. 60/452,165, filed on Mar. 3, 2003, which is incorporated by reference as if fully set forth.

FIELD OF INVENTION

The invention generally relates to wireless communication systems, In particular, the invention relates to data detection in such systems.

BACKGROUND

Due to the increased demands for improved receiver performance, many advanced receivers use zero forcing (ZF) block linear equalizers and minimum mean square error (MMSE) equalizers.

In both these approaches, the received signal is typically modeled per Equation 1. r=Hd+n  Equation 1

r is the received vector, comprising samples of the received signal. H is the channel response matrix. d is the data vector. In spread spectrum systems, such as code division multiple access (CDMA) systems, d is the spread data vector. In CDMA systems, data for each individual code is produced by despreading the estimated data vector d with that code. n is the noise vector.

In a ZF block linear equalizer, the data vector is estimated, such as per Equation 2. d=(H)⁻¹ r  Equation 2

(.)^(H) is the complex conjugate transpose (or Hermetian) operation. In a MMSE block linear equalizer, the data vector is estimated, such as per Equation 3. d=(H ^(H) H+σ ²I)⁻¹ r  Equation 3

In wireless channels experiencing multipath propagation, to accurately detect the data using these approaches requires that an infinite number of received samples be used. One approach to reduce the complexity is a sliding window approach. In the sliding window approach, a predetermined window of received samples and channel responses are used in the data detection. After the initial detection, the window is slid down to a next window of samples. This process continues until the communication ceases.

By not using an infinite number of samples, an error is introduced into the data detection. The error is most prominent at the beginning and end of the window, where the effectively truncated portions of the infinite sequence have the largest impact. One approach to reduce these errors is to use a large window size and truncate the results at the beginning and the end of the window. The truncated portions of the window are determined in previous and subsequent windows. This approach has considerable complexity. The large window size leads to large dimensions on the matrices and vectors used in the data estimation. Additionally, this approach is not computationally efficient by detection data at the beginning and at the ends of the window and then discarding that data.

Accordingly, it is desirable to have alternate approaches to data detection.

SUMMARY

Data estimation is performed in a wireless communications system. A received vector is produced. For use in estimating a desired portion of data of the received vector, a past, a center and a future portion of a channel estimate matrix is determined. The past portion is associated with a portion of the received signal prior to the desired portion of the data. The future portion is associated with a portion of the received vector after the desired portion of the data and the center portion is associated with a portion of the received vector associated with the desired data portion. The desired portion of the data is estimated without effectively truncating detected data. The estimating the desired portion of the data uses a minimum mean square error algorithm having inputs of the center portion of the channel estimate matrix and a portion of the received vector. The past and future portions of the channel estimate matrix are used to adjust factors in the minimum mean square error algorithm.

BRIEF DESCRIPTION OF THE DRAWING(S)

FIG. 1 is an illustration of a banded channel response matrix.

FIG. 2 is an illustration of a center portion of the banded channel response matrix.

FIG. 3 is an illustration of a data vector window with one possible partitioning.

FIG. 4 is an illustration of a partitioned signal model.

FIG. 5 is a flow diagram of sliding window data detection using a past correction factor.

FIG. 6 is a receiver using sliding window data detection using a past correction factor.

FIG. 7 is a flow diagram of sliding window data detection using a noise auto-correlation correction factor.

FIG. 8 is a receiver using sliding window data detection using a noise auto-correlation correction factor.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

Hereafter, a wireless transmit/receive unit (WTRU) includes but is not limited to a user equipment, mobile station, fixed or mobile subscriber unit, pager, or any other type of device capable of operating in a wireless environment. When referred to hereafter, a base station includes but is not limited to a Node-B, site controller, access point or any other type of interfacing device in a wireless environment.

Although reduced complexity sliding window equalizer is described in conjunction with a preferred wireless code division multiple access communication system, such as CDMA2000 and universal mobile terrestrial system (UMTS) frequency division duplex (FDD), time division duplex (TDD) modes and time division synchronous CDMA (TD-SCDMA), it can be applied to various communication system and, in particular, various wireless communication systems. In a wireless communication system, it can be applied to transmissions received by a WTRU from a base station, received by a base station from one or multiple WTRUs or received by one WTRU from another WTRU, such as in an ad hoc mode of operation.

The following describes the implementation of a reduced complexity sliding window based equalizer using a preferred MMSE algorithm. However, other algorithms can be used, such as a zero forcing algorithm. h(.) is the impulse response of a channel. d(k) is the k^(th) transmitted sample that is generated by spreading a symbol using a spreading code. It can also be sum of the chips that are generated by spreading a set of symbols using a set of codes, such as orthogonal codes. r(.) is the received signal. The model of the system can expressed as per Equation 4. $\begin{matrix} {{r(t)} = {{{\sum\limits_{k = {- \infty}}^{\infty}\quad{{d(k)}{h\left( {t - {k\quad T_{c}}} \right)}}} + {n(t)}\quad - \infty} < t < \infty}} & {{Equation}\quad 4} \end{matrix}$

n(t) is the sum of additive noise and interference (intra-cell and inter-cell). For simplicity, the following is described assuming chip rate sampling is used at the receiver, although other sampling rates may be used, such as a multiple of the chip rate. The sampled received signal can be expressed as per Equation 5. $\begin{matrix} \begin{matrix} {{r(j)} = {{\sum\limits_{k = {- \infty}}^{\infty}\quad{{d(k)}{h\left( {j - k} \right)}}} + {n(j)}}} & {j \in \left\{ {\ldots,{- 2},{- 1},0,1,2,\ldots} \right\}} \\ {\quad{= {{\sum\limits_{k = {- \infty}}^{\infty}\quad{{d\left( {j - k} \right)}{h(k)}}} + {n(j)}}}} & \quad \end{matrix} & {{Equation}\quad 5} \end{matrix}$ T_(c) is being dropped for simplicity in the notations.

Assuming h(.) has a finite support and is time invariant. This means that in the discrete-time domain, index L exists such that h(i)=0 for i<0 and i≧L. As a result, Equation 5 can be re-written as Equation 6. $\begin{matrix} {{r(j)} = {{{\sum\limits_{k = 0}^{L - 1}\quad{{h(k)}{d\left( {j - k} \right)}}} + {{n(j)}\quad j}} \in \left\{ {\ldots,{- 2},{- 1},0,1,2,\ldots} \right\}}} & {{Equation}\quad 6} \end{matrix}$

Considering that the received signal has M received signals r(0), . . . , r(M−1), Equation 7 results. r=Hd+n where, $\begin{matrix} \begin{matrix} {{r = {\left\lbrack {{r(0)},\cdots\quad,{r\left( {M - 1} \right)}} \right\rbrack^{T} \in C^{M}}},} \\ {d = {\left\lbrack {{d\left( {{- L} + 1} \right)},{d\left( {{- L} + 2} \right)},\ldots\quad,{d(0)},{d(1)},\ldots\quad,{d\left( {M - 1} \right)}} \right\rbrack^{T} \in C^{{M + L} = 1}}} \\ {n = {\left\lbrack {{n(0)},\cdots\quad,{n\left( {M - 1} \right)}} \right\rbrack^{T} \in C^{M}}} \\ {H = {\begin{bmatrix} {h\left( {L - 1} \right)} & {h\left( {L - 2} \right)} & \cdots & {h(1)} & {h(0)} & 0 & \cdots & \cdots \\ 0 & {h\left( {L - 1} \right)} & {h\left( {L - 2} \right)} & \cdots & {h(1)} & {h(0)} & 0 & \cdots \\ \vdots & ⋰ & ⋰ & ⋰ & ⋰ & ⋰ & ⋰ & \vdots \\ \cdots & \cdots & 0 & {h\left( {L - 1} \right)} & {h\left( {L - 2} \right)} & \cdots & {h(1)} & {h(0)} \end{bmatrix} \in C^{M \times {({M + L - 1})}}}} \end{matrix} & {{Equation}\quad 7} \end{matrix}$

Part of the vector d can be determined using an approximate equation. Assuming M>L and defining N=M−L+1, vector d is per Equation 8. $\begin{matrix} {d = \left\lbrack {\underset{\underset{L - 1}{︸}}{{d\left( {{- L} + 1} \right)},{d\left( {{- L} + 2} \right)},\ldots\quad,{d\left( {- 1} \right)},}\underset{\underset{N}{︸}}{{d(0)},{d(1)},\ldots\quad,{d\left( {N - 1} \right)},}} \right.} \\ {\left. \quad\underset{\underset{L - 1}{︸}}{{d(N)},\ldots\quad,{d\left( {N + L - 2} \right)}} \right\rbrack^{T} \in C^{N + {2L} - 2}} \end{matrix}$

The H matrix in Equation 7 is a banded matrix, which can be represented as the diagram in FIG. 1. In FIG. 1, each row in the shaded area represents the vector [h(L−1),h(L−2), . . . , h(1), h(0)], as shown in Equation 7.

Instead of estimating all of the elements in d, only the middle N elements of d are estimated. {tilde over (d)} is the middle N elements as per Equation 9. {tilde over (d)}=[d(0), . . . , d(N−1)]^(T)  Equation 9

Using the same observation for r, an approximate linear relation between r and {tilde over (d)} is per Equation 10. r={tilde over (H)}{tilde over (d)}+n  Equation 10

Matrix {tilde over (H)} can be represented as the diagram in FIG. 2 or as per Equation 11. $\begin{matrix} {\overset{\sim}{H} = \begin{bmatrix} {h(0)} & 0 & \cdots & \quad \\ {h(1)} & {h(0)} & ⋰ & \quad \\ \vdots & {h(1)} & ⋰ & 0 \\ {h\left( {L - 1} \right)} & \vdots & ⋰ & {h(0)} \\ 0 & {h\left( {L - 1} \right)} & ⋰ & {h(1)} \\ \vdots & 0 & ⋰ & \vdots \\ \quad & \vdots & ⋰ & {h\left( {L - 1} \right)} \end{bmatrix}} & {{Equation}\quad 11} \end{matrix}$

As shown, the first L−1 and the last L−1 elements of r are not equal to the right hand side of the Equation 10. As a result, the elements at the two ends of vector {tilde over (d)} will be estimated less accurately than those near the center. Due to this property, a sliding window approach is preferably used for estimation of transmitted samples, such as chips.

In each, k^(th) step of the sliding window approach, a certain number of the received samples are kept in r [k] with dimension N+L−1. They are used to estimate a set of transmitted data {tilde over (d)}[k] with dimension N using equation 10. After vector {tilde over (d)}[k] is estimated, only the “middle” part of the estimated vector {tilde over ({circumflex over (d)})}[k] is used for the further data processing, such as by despreading. The “lower” part (or the later in-time part) of {tilde over (d)}[k] is estimated again in the next step of the sliding window process in which r [k+1] has some of the elements r [k] and some new received samples, i.e. it is a shift (slide) version of r [k].

Although, preferably, the window size N and the sliding step size are design parameters, (based on delay spread of the channel (L), the accuracy requirement for the data estimation and the complexity limitation for implementation), the following using the window size of Equation 12 for illustrative purposes. N=4N _(S) ×SF  Equation 12 SF is the spreading factor. Typical window sizes are 5 to 20 times larger than the channel impulse response, although other sizes may be used.

The sliding step size based on the window size of Equation 12 is, preferably, 2N_(S)×SF. N_(S)ε{1,2, . . . } is, preferably, left as a design parameter. In addition, in each sliding step, the estimated chips that are sent to the despreader are 2N_(S)×SF elements in the middle of the estimated {circumflex over (d)}[k]. This procedure is illustrated in FIG. 3.

One algorithm of data detection uses an MMSE algorithm with model error correction uses a sliding window based approach and the system model of Equation 10.

Due to the approximation, the estimation of the data, such as chips, has error, especially, at the two ends of the data vector in each sliding step (the beginning and end). To correct this error, the H matrix in Equation 7 is partitioned into a block row matrix, as per Equation 13, (step 50). H=[H _(p) |{tilde over (H)}|H _(f)]  Equation 13

Subscript “p” stands for “past”, and “f” stands for “future”. {tilde over (H)} is as per Equation 10. H_(p) is per Equation 14. $\begin{matrix} {H_{p} = {\begin{bmatrix} {h\left( {L - 1} \right)} & {h\left( {L - 2} \right)} & \cdots & {{h(1)}\quad} \\ 0 & {h\left( {L - 1} \right)} & \cdots & {{h(2)}\quad} \\ \vdots & ⋰ & ⋰ & \vdots \\ 0 & \cdots & 0 & {h\left( {L - 1} \right)} \\ 0 & \cdots & \cdots & 0 \\ \vdots & \vdots & \vdots & \vdots \\ 0 & \cdots & \cdots & 0 \end{bmatrix} \in C^{{({N + L - 1})} \times {({L - 1})}}}} & {{Equation}\quad 14} \end{matrix}$

H_(f) is per Equation 15. $\begin{matrix} {H_{f} = {\begin{bmatrix} 0 & \cdots & \cdots & {0\quad} \\ \vdots & \vdots & \vdots & {\vdots\quad} \\ 0 & \cdots & \cdots & 0 \\ {h(0)} & 0 & \cdots & 0 \\ \vdots & ⋰ & ⋰ & 0 \\ {h\left( {L - 3} \right)} & \cdots & {h(0)} & 0 \\ {h\left( {L - 2} \right)} & {h\left( {L - 3} \right)} & \cdots & {h(0)} \end{bmatrix} \in C^{{({N + L - 1})} \times {({L - 1})}}}} & {{Equation}\quad 15} \end{matrix}$

The vector d is also partitioned into blocks as per Equation 16. d=[d _(p) ^(T) |{tilde over (d)} ^(T) |d _(f) ^(T)]^(T)  Equation 16

{tilde over (d)} is the same as per Equation 8 and d_(p) is per Equation 17. d _(p) =[d(−L+1)d(−L+2) . . . d(−1)]^(T) εC ^(L−1)  Equation 17

d_(f) is per Equation 18. d _(f) =[d(N)d(N+1) . . . d(N+L−2)]^(T) εC ^(L−1)  Equation 18

The original system model is then per Equation 19 and is illustrated in FIG. 4. r=H _(p) d _(p) +{tilde over (H)}{tilde over (d)}+H_(f) d _(f) +n  Equation 19

One approach to model Equation 19 is per Equation 20. {tilde over (r)}={tilde over (H)}{tilde over (d)}+ñ ₁ where {tilde over (r)}=r−H _(p) d _(p) and ñ ₁ =H _(f) d _(f) +n  Equation 20

Using an MMSE algorithm, the estimated data vector {tilde over ({circumflex over (d)})}is per Equation 21. {tilde over ({circumflex over (d)})}=g _(d) {tilde over (H)} ^(H)(g _(d) {tilde over (H)}{tilde over (H)} ^(H)+Σ₁)⁻¹ {tilde over ({circumflex over (r)})}  Equation 21

In Equation 21, g_(d) is chip energy per Equation 22. E{d(i)d*(j)}=g _(d)δ_(ij)  Equation 22

{tilde over ({circumflex over (r)})} is per Equation 23. {tilde over ({circumflex over (r)})}=r−H _(p) {circumflex over (d)} _(p)  Equation 23

{circumflex over (d)}_(p), is part of the estimation of {tilde over (d)} in the previous sliding window step. Σ₁ is the autocorrelation matrix of ñ₁, i.e., Σ₁=E{ñ₁ñ₁ ^(H) }. If assuming H_(f)d_(f) and n are uncorrelated, Equation 24 results. Σ₁ =g _(d) H _(f) H _(f) ^(H) +E{nn ^(H)}Equation 24

The reliability of {circumflex over (d)}_(p) depends on the sliding window size (relative to the channel delay span L) and sliding step size.

This approach is also described in conjunction with the flow diagram of FIG. 5 and preferred receiver components of FIG. 6, which can be implemented in a WTRU or base station. The circuit of FIG. 6 can be implemented on a single integrated circuit (IC), such as an application specific integrated circuit (ASIC), on multiple IC's, as discrete components or as a combination of IC('s) and discrete components.

A channel estimation device 20 processes the received vector r producing the channel estimate matrix portions, H_(p), {tilde over (H)} and H_(f), (step 50). A future noise auto-correlation device 24 determines a future noise auto-correlation factor, g_(d)H_(f)H_(f) ^(H), (step 52). A noise auto-correlation device 22 determines a noise auto-correlation factor, E{nn^(H)}, (step 54). A summer 26 sums the two factors together to produce Σ₁, (step 56).

A past input correction device 28 takes the past portion of the channel response matrix, H_(p), and a past determined portion of the data vector, {circumflex over (d)}_(p), to produce a past correction factor, H_(p){circumflex over (d)}_(p), (step 58). A subtractor 30 subtracts the past correction factor from the received vector producing a modified received vector, {tilde over ({circumflex over (r)})}, (step 60). An MMSE device 34 uses Σ₁, {tilde over (H)}, and {tilde over ({circumflex over (r)})} to determine the received data vector center portion {tilde over ({circumflex over (d)})}, such as per Equation 21, (step 62). The next window is determined in the same manner using a portion of {tilde over ({circumflex over (d)})} as {circumflex over (d)}_(p) in the next window determination, (step 64). As illustrated in this approach, only data for the portion of interest,{tilde over ({circumflex over (d)})}, is determined reducing the complexity involved in the data detection and the truncating of unwanted portions of the data vector.

In another approach to data detection, only the noise term is corrected. In this approach, the system model is per Equation 25. r={tilde over (H)}{tilde over (d)}+ñ ₂, where ñ ₂ =H _(p) d _(p) +H _(f) d _(f) +n  Equation 25

Using an MMSE algorithm, the estimated data vector {tilde over ({circumflex over (d)})} is per Equation 26. {tilde over ({circumflex over (d)})}=g _(d) {tilde over (H)} ^(H)(g _(d) {tilde over (H)}{tilde over (H)} ^(H)+Σ₂)⁻¹ r  Equation 26

Assuming H_(p)d_(p), H_(f)d_(f) and n are uncorrelated, Equation 27 results. Σ₂ =g _(d) H _(p) H _(p) ^(H) +g _(d) H _(f) H _(f) ^(H) +E{nn ^(H)}  Equation 27

To reduce the complexity in solving Equation 26 using Equation 27, a full matrix multiplication for H_(p)H_(p) ^(H) and H_(f)H_(f) ^(H) are not necessary, since only the upper and lower corner of H_(p) and H_(f), respectively, are non-zero, in general.

This approach is also described in conjunction with the flow diagram of FIG. 7 and preferred receiver components of FIG. 8, which can be implemented in a WTRU or base station. The circuit of FIG. 8 can be implemented on a single integrated circuit (IC), such as an application specific integrated circuit (ASIC), on multiple IC's, as discrete components or as a combination of IC('s) and discrete components.

A channel estimation device 36 processes the received vector producing the channel estimate matrix portions, H_(p), {tilde over (H)} and H_(f), (step 70). A noise auto-correlation correction device 38 determines a noise auto-correlation correction factor, g_(d)H_(p)H_(p) ^(H)+g_(d)H_(f)H_(f) ^(H), using the future and past portions of the channel response matrix, (step 72). A noise auto correlation device 40 determines a noise auto-correlation factor, E{nn^(H)}, (step 74). A summer 42 adds the noise auto-correlation correction factor to the noise auto-correlation factor to produce Σ₂, (step 76). An MMSE device 44 uses the center portion or the channel response matrix, {tilde over (H)}, the received vector, r, and Σ₂ to estimate the center portion of the data vector, {tilde over ({circumflex over (d)})}, (step 78). One advantage to this approach is that a feedback loop using the detected data is not required. As a result, the different slided window version can be determined in parallel and not sequentially. 

1. A method for data estimation is a wireless communications system, the method comprising: producing a received vector; for use in estimating a desired portion of data of the received vector, determining a past, a center and a future portion of a channel estimate matrix, the past portion associated with a portion of the received signal prior to the desired portion of the data, the future portion associated with a portion of the received vector after the desired portion of the data and the center portion associated with a portion of the received vector associated with the desired data portion; estimating the desired portion of the data without effectively truncating detected data, the estimating the desired portion of the data uses a minimum mean square error algorithm having inputs of the center portion of the channel estimate matrix and a portion of the received vector; and using the past and future portions of the channel estimate matrix for adjusting factors in the minimum mean square error algorithm.
 2. The method of claim 1 wherein the received vector comprises at least one code division multiple access signal and the estimated desired portion of the data produces a portion of a spread data vector.
 3. The method of claim 1 further comprising adjusting the received vector prior to input into the minimum mean square error algorithm using the past portion of the channel estimate matrix and data previously estimated for a portion of the received vector associated with the past portion of the channel estimate matrix.
 4. The method of claim 3 wherein the adjusting the received vector is by subtracting a multiplication of the past portion of the channel estimate matrix with the previously estimated data from the received vector.
 5. The method of claim 1 wherein the data estimation is performed using a sliding window approach and the desired portion of data of the received vector is a center portion of the window.
 6. The method of claim 1 further comprising producing a noise factor using the prior channel estimate matrix, the future channel estimate matrix and an auto correlation of the noise and the inputs into the minimum mean square error algorithm are the noise factor, the center portion of the channel estimate matrix and the portion of the received vector.
 7. A wireless transmit/receive unit comprising: means for producing a received vector; means for use in estimating a desired portion of data of the received vector, for determining a past, a center and a future portion of a channel estimate matrix, the past portion associated with a portion of the received signal prior to the desired portion of the data, the future portion associated with a portion of the received vector after the desired portion of the data and the center portion associated with a portion of the received vector associated with the desired data portion; means for estimating the desired portion of the data without effectively truncating detected data, the estimating the desired portion of the data uses a minimum mean square error algorithm having inputs of the center portion of the channel estimate matrix and a portion of the received vector; and means using the past and future portions of the channel estimate matrix for adjusting factors in the minimum mean square error algorithm.
 8. The wireless transmit/receive unit of claim 7 wherein the received vector comprises at least one code division multiple access signal and the estimated desired portion of the data produces a portion of a spread data vector.
 9. The wireless transmit/receive unit of claim 7 wherein the received vector is adjusted prior to input into the minimum mean square error algorithm using the past portion of the channel estimate matrix and data previously estimated for a portion of the received vector associated with the past portion of the channel estimate matrix.
 10. The wireless transmit/receive unit of claim 9 wherein the adjusting the received vector is by subtracting a multiplication of the past portion of the channel estimate matrix with the previously estimated data from the received vector.
 11. The wireless transmit/receive unit of claim 7 wherein the data estimation is performed using a sliding window approach and the desired portion of data of the received vector is a center portion of the window.
 12. The wireless transmit/receive unit of claim 7 wherein a noise factor is produced using the prior channel estimate matrix, the future channel estimate matrix and an auto correlation of the noise and the inputs into the minimum mean square error algorithm are the noise factor, the center portion of the channel estimate matrix and the portion of the received vector.
 13. A wireless transmit/receive unit receiving at least one signal and producing a received vector, the wireless transmit/receive unit comprising: a channel estimation device for use in estimating a desired portion of data of the received vector, for determining a past, a center and a future portion of a channel estimate matrix, the past portion associated with a portion of the received signal prior to the desired portion of the data, the future portion associated with a portion of the received vector after the desired portion of the data and the center portion associated with a portion of the received vector associated with the desired data portion; a minimum mean square error device for estimating the desired portion of the data without effectively truncating detected data, the estimating the desired portion of the data uses a minimum mean square error algorithm having inputs of the center portion of the channel estimate matrix and a portion of the received vector; wherein the past and future portions of the channel estimate matrix are used for adjusting factors in the minimum mean square error algorithm.
 14. The wireless transmit/receive unit of claim 13 wherein the received vector comprises at least one code division multiple access signal and the estimated desired portion of the data produces a portion of a spread data vector.
 15. The wireless transmit/receive unit of claim 13 wherein the received vector is adjusted prior to input into the minimum mean square error algorithm using the past portion of the channel estimate matrix and data previously estimated for a portion of the received vector associated with the past portion of the channel estimate matrix.
 16. The wireless transmit/receive unit of claim 15 wherein the adjusting the received vector is by subtracting a multiplication of the past portion of the channel estimate matrix with the previously estimated data from the received vector.
 17. The wireless transmit/receive unit of claim 13 wherein the data estimation is performed using a sliding window approach and the desired portion of data of the received vector is a center portion of the window.
 18. The wireless transmit/receive unit of claim 13 wherein a noise factor is produced using the prior channel estimate matrix, the future channel estimate matrix and an auto correlation of the noise and the inputs into the minimum mean square error algorithm are the noise factor, the center portion of the channel estimate matrix and the portion of the received vector.
 19. A base station comprising: means for producing a received vector; means for use in estimating a desired portion of data of the received vector, for determining a past, a center and a future portion of a channel estimate matrix, the past portion associated with a portion of the received signal prior to the desired portion of the data, the future portion associated with a portion of the received vector after the desired portion of the data and the center portion associated with a portion of the received vector associated with the desired data portion; means for estimating the desired portion of the data without effectively truncating detected data, the estimating the desired portion of the data uses a minimum mean square error algorithm having inputs of the center portion of the channel estimate matrix and a portion of the received vector; and means using the past and future portions of the channel estimate matrix for adjusting factors in the minimum mean square error algorithm.
 20. The base station of claim 19 wherein the received vector comprises at least one code division multiple access signal and the estimated desired portion of the data produces a portion of a spread data vector.
 21. The base station of claim 19 wherein the received vector is adjusted prior to input into the minimum mean square error algorithm using the past portion of the channel estimate matrix and data previously estimated for a portion of the received vector associated with the past portion of the channel estimate matrix.
 22. The base station of claim 21 wherein the adjusting the received vector is by subtracting a multiplication of the past portion of the channel estimate matrix with the previously estimated data from the received vector.
 23. The base station of claim 19 wherein the data estimation is performed using a sliding window approach and the desired portion of data of the received vector is a center portion of the window.
 24. The base station of claim 19 wherein a noise factor is produced using the prior channel estimate matrix, the future channel estimate matrix and an auto correlation of the noise and the inputs into the minimum mean square error algorithm are the noise factor, the center portion of the channel estimate matrix and the portion of the received vector.
 25. A base station receiving at least one signal and producing a received vector, the base station comprising: a channel estimation device for use in estimating a desired portion of data of the received vector, for determining a past, a center and a future portion of a channel estimate matrix, the past portion associated with a portion of the received signal prior to the desired portion of the data, the future portion associated with a portion of the received vector after the desired portion of the data and the center portion associated with a portion of the received vector associated with the desired data portion; a minimum mean square error device for estimating the desired portion of the data without effectively truncating detected data, the estimating the desired portion of the data uses a minimum mean square error algorithm having inputs of the center portion of the channel estimate matrix and a portion of the received vector; wherein the past and future portions of the channel estimate matrix are used for adjusting factors in the minimum mean square error algorithm.
 26. The base station of claim 25 wherein the received vector comprises at least one code division multiple access signal and the estimated desired portion of the data produces a portion of a spread data vector.
 27. The base station of claim 25 wherein the received vector is adjusted prior to input into the minimum mean square error algorithm using the past portion of the channel estimate matrix and data previously estimated for a portion of the received vector associated with the past portion of the channel estimate matrix.
 28. The base station of claim 27 wherein the adjusting the received vector is by subtracting a multiplication of the past portion of the channel estimate matrix with the previously estimated data from the received vector.
 29. The base station of claim 25 wherein the data estimation is performed using a sliding window approach and the desired portion of data of the received vector is a center portion of the window.
 30. The base station of claim 25 wherein a noise factor is produced using the prior channel estimate matrix, the future channel estimate matrix and an auto correlation of the noise and the inputs into the minimum mean square error algorithm are the noise factor, the center portion of the channel estimate matrix and the portion of the received vector.
 31. An integrated circuit comprising: an input configured to receive a received vector; a channel estimation device producing a prior, center and future portion of a channel response matrix using the received vector; a future noise auto-correlation device for receiving the future portion of the channel response matrix and producing a future noise auto-correlation factor; a noise auto-correlation device producing a noise auto-correlation factor using the received vector; a summer for summing the future noise auto-correlation factor with the noise auto-correlation factor; a past input correction device for receiving the prior portion of the channel response matrix and prior detected data to produce a past input correction factor; a subtractor subtracting the past input correction factor from the received vector; and a minimum mean square error device for receiving an output of the summer, an output of the subtractor and the center portion of the channel estimate matrix, the minimum mean square error device producing estimated data.
 32. An integrated circuit comprising: an input configured to receive a received vector; a channel estimation device producing a prior, center and future portion of a channel response matrix using the received vector; a noise auto-correlation correction device for receiving the future and prior portions of the channel response matrix and producing a noise auto-correlation correction factor; a noise auto-correlation device producing a noise auto-correlation factor using the received vector; a summer for summing the noise auto-correlation factor with the noise auto-correlation correction factor; a minimum mean square error device for receiving an output of the summer, the center portion of the channel estimate matrix and the received vector, the minimum mean square error device producing estimated data. 